Android -6.0 权限
Dec 1, 2016
6.0 机制发生改变
新的权限机制更好的保护了用户的隐私,Google将权限分为两类,一类是Normal Permissions,这类权限一般不涉及用户隐私,是不需要用户进行授权的,比如手机震动、访问网络等;另一类是Dangerous Permission,一般是涉及到用户隐私的,需要用户进行授权,比如读取sdcard、访问通讯录等。
危险权限
- LOCATION    ACCESS_FINE_LOCATION 
 ACCESS_COARSE_LOCATION
- PHONE    READ_PHONE_STATE 
 CALL_PHONE
 READ_CALL_LOG
 WRITE_CALL_LOG
 ADD_VOICEMAIL
 USE_SIP
 PROCESS_OUTGOING_CALLS
- STORAGE    READ_EXTERNAL_STORAG 
 WRITE_EXTERNAL_STORAGE
在AndroidManifest中添加需要的权限
检查权限
ContextCompat.checkSelfPermission —主要用于检测某个权限是否已经被授予
 方法返回值
- PackageManager.PERMISSION_DENIED 拒绝
- PackageManager.PERMISSION_GRANTED 同意123456if (ContextCompat.checkSelfPermission(thisActivity,Manifest.permission.READ_CONTACTS)!= PackageManager.PERMISSION_GRANTED) {}else{//}
申请权限
该方法是异步的,第一个参数是Context;第二个参数是需要申请的权限的字符串数组;第三个参数为requestCode,主要用于回调的时候检测。可以从方法名requestPermissions以及第二个参数看出,是支持一次性申请多个权限的,系统会通过对话框逐一询问用户是否授权123ActivityCompat.requestPermissions(thisActivity,                new String[]{Manifest.permission.READ_CONTACTS},                MY_PERMISSIONS_REQUEST_READ_CONTACTS);
处理申请的回调
| 
 | 
 | 
申请权限的解释
| 
 | 
 | 
总结
| 
 | 
 | 
